📚 Tech Notes
This KB is a collection of notes, implementations, and concepts I've gathered over time.
It's a mix of Data Structures and Algorithms (DSA), System Design, Machine Learning concepts, and more.
It's a structured dump of stuff I've pulled out of old word files and tweaked into linkable artifacts
Table of Contents​
Design Systems​
This section focuses on building specific systems, often inspired by technical interviews or real-world use cases. Examples include URL shorteners, YouTube Search, Top K Heavy Hitters, and more.
To implement these systems, you'll find notes on Databases, Messaging, Calculations, and other essential components.
Databases and Storage​
- Covers SQL and NoSQL architectures/products.
- Includes discussions on Relational Databases, NoSQL Key-Value Stores, Blob Storage, and Data Warehousing Solutions.
Messaging​
- Explains how to send messages between services using Queues, Brokers, and Pub/Sub systems.
Typical Resources​
- Discussions and implementations of "typical" resources like:
- Distributed Key-Value Stores.
- Front-end Load Balancers with Metadata.
- Distributed Queues.
- Includes Kubernetes (K8s) and Terraform configurations to demonstrate how to create these systems natively.
DSA​
This section contains:
- General Data Structures and Algorithms.
- Their implementations, time/space complexities, and use cases.
Other Concepts​
This section includes generic concepts that don't fit into DSA or System Design, such as:
- Embeddings.
- Parallel Training Designs.
- Pregel Graph Traversals.
These are useful but don't belong in the other categories.
Implementations​
A collection of generic implementations, including:
- A Key-Value Store with Transactions.
- A Balanced Binary Search Tree from Scratch.
- ML Feature Store Architecture Diagram.
Leet​
This is a dump of Leetcode problems and comments, organized for easy reference.
Arxiv​
These are just papers I've read marked up with highlighter - my old iPad died and brought these here
References​
These are some of the resources I frequently use and reference throughout this repo:
- Leetcode: Great for DSA and Systems Design problems.
- 3Blue1Brown: Amazing visual explanations for Linear Algebra, Probability, and Deep Neural Networks.
- Highly recommend the Attention video for understanding Transformers.
- Jay Alammar's Visual Transformer Paper: A fantastic resource for understanding Attention and Transformers.
- Yuan Meng Embeddings Post
- Useful for seeing the actual topological interpretations of embeddings, and why geomtric / metric space operations are allowed
- Google ML Rec Systems: Useful for search, recommendation systems, and embeddings.
- Hello Interview: Great for Systems Design interview preparation.
- Programiz: Excellent for DSA implementations and complexity analysis.
- [Medium Articles]
- [Spark]
- Spark Streaming
- Udemy AWS Solution Architect Course
- [Cassandra]
- [Jay Alammar Illustrated]
- LayerNorm
- Another persons blog - AmitNess
Why This?​
This repo is meant to be a reference hub for anyone interested in:
- Learning DSA and System Design.
- Exploring Machine Learning concepts like embeddings and attention mechanisms.
- Understanding real-world system implementations.
Feel free to explore, contribute, or use it as a learning resource!